enum ArgConfigType {
  LLM_API_KEY = "LLM_API_KEY",
  LLM_BASE_URL = "LLM_BASE_URL",
  WORKSPACE_DIR = "WORKSPACE_DIR",
  LLM_MODEL = "LLM_MODEL",
  SANDBOX_CONTAINER_IMAGE = "SANDBOX_CONTAINER_IMAGE",
  RUN_AS_DEVIN = "RUN_AS_DEVIN",
  LLM_EMBEDDING_MODEL = "LLM_EMBEDDING_MODEL",
  LLM_NUM_RETRIES = "LLM_NUM_RETRIES",
  LLM_COOLDOWN_TIME = "LLM_COOLDOWN_TIME",
  DIRECTORY_REWRITE = "DIRECTORY_REWRITE",
  MAX_ITERATIONS = "MAX_ITERATIONS",
  AGENT = "AGENT",

  LANGUAGE = "LANGUAGE",
}

const SupportedList: string[] = [
  // ArgConfigType.LLM_API_KEY,
  // ArgConfigType.LLM_BASE_URL,
  ArgConfigType.WORKSPACE_DIR,
  ArgConfigType.LLM_MODEL,
  // ArgConfigType.SANDBOX_CONTAINER_IMAGE,
  // ArgConfigType.RUN_AS_DEVIN,
  // ArgConfigType.LLM_EMBEDDING_MODEL,
  // ArgConfigType.LLM_NUM_RETRIES,
  // ArgConfigType.LLM_COOLDOWN_TIME,
  // ArgConfigType.DIRECTORY_REWRITE,
  // ArgConfigType.MAX_ITERATIONS,
  ArgConfigType.AGENT,
  ArgConfigType.LANGUAGE,
];

export { ArgConfigType, SupportedList };
